Important: glusterfs security and bug fix update

Synopsis

Important: glusterfs security and bug fix update

Type/Severity

Security Advisory: Important

Topic

Updated glusterfs packages that fix multiple security issues and bugs are now available for Red Hat Gluster Storage 3.4 on Red Hat Enterprise Linux 7.

Red Hat Product Security has rated this update as having a security impact of Important. A Common Vulnerability Scoring System (CVSS) base score, which gives a detailed severity rating, is available for each vulnerability from the CVE link(s) in the References section.

Description

GlusterFS is a key building block of Red Hat Gluster Storage. It is based on a stackable user-space design and can deliver exceptional performance for diverse workloads. GlusterFS aggregates various storage servers over network interconnections into one large, parallel network file system.

Security Fix(es):

  • glusterfs: glusterfs server exploitable via symlinks to relative paths (CVE-2018-14651)
  • glusterfs: Buffer overflow in "features/locks" translator allows for denial of service (CVE-2018-14652)
  • glusterfs: Heap-based buffer overflow via "gf_getspec_req" RPC message (CVE-2018-14653)
  • glusterfs: "features/index" translator can create arbitrary, empty files (CVE-2018-14654)
  • glusterfs: Unlimited file creation via "GF_XATTR_IOSTATS_DUMP_KEY" xattr allows for denial of service (CVE-2018-14659)
  • glusterfs: Repeat use of "GF_META_LOCK_KEY" xattr allows for memory exhaustion (CVE-2018-14660)
  • glusterfs: features/locks translator passes an user-controlled string to snprintf without a proper format string resulting in a denial of service (CVE-2018-14661)

For more details about the security issue(s), including the impact, a CVSS score, and other related information, refer to the CVE page(s) listed in the References section.

Red Hat would like to thank Michael Hanselmann (hansmi.ch) for reporting these issues.

Bug Fix(es):

  • MD5 instances are replaced with FIPS-compliant SHA256 checksums and glusterd no longer crashes when run on a FIPS enabled machine. (BZ#1459709)
  • The flock is unlocked specifically and the status file is updated so that the reference is not leaked to any worker or agent process. As a result of this fix, all workers come up without fail. (BZ#1623749)
  • All HTIME index files are checked for the specified start and end times, and the History API does not fail when multiple HTIME files exist. (BZ#1627639)
  • After upgrading to Red Hat Gluster Storage 3.4 from earlier versions of Red Hat Gluster Storage, the volume size displayed by the df command was smaller than the actual volume size. This has been fixed and the df command now shows the correct size for all volumes. (BZ#1630997)
  • The algorithm to disable the eager-lock is modified and it disables only when multiple write operations are trying to modify a file at the same time. This led to performance improvement while a write operation is performed on a file irrespective of the number of times it is opened at the same time for a read operation. (BZ#1630688)
  • heal-info does not consider the presence of dirty markers as an indication of split-brain and does not display these entries to be in a split-brain state. (BZ#1610743)

All users of Red Hat Gluster Storage are advised to upgrade to these updated packages, which provide numerous bug fixes and enhancements.

Solution

For details on how to apply this update, which includes the changes described in this advisory, refer to:

https://access.redhat.com/articles/11258

Affected Products

  • Red Hat Enterprise Linux Server 7 x86_64
  • Red Hat Gluster Storage Server for On-premise 3 for RHEL 7 x86_64

Fixes

  • BZ - 1610743 - Directory is incorrectly reported as in split-brain when dirty marking is there
  • BZ - 1618221 - If a node disconnects during volume delete, it assumes deleted volume as a freshly created volume when it is back online
  • BZ - 1619627 - Add performance options to virt profile
  • BZ - 1622649 - [RHEL7] Some of the Posix compliance tests are failing on gluster mount
  • BZ - 1623749 - Geo-rep: Few workers fails to start with out any failure
  • BZ - 1623874 - IO errors on block device post rebooting one brick node
  • BZ - 1624444 - Fail volume stop operation in case brick detach request fails
  • BZ - 1625622 - [Disperse] Improve log messages for EC volume while getting/setting xattrs and finding good child to wind
  • BZ - 1626780 - sas workload job getting stuck after sometime
  • BZ - 1627098 - RFE: make fuse dumping available as mount option
  • BZ - 1627617 - SAS job aborts complaining about file doesn't exist
  • BZ - 1627639 - libgfchangelog: History API fails
  • BZ - 1630688 - Low Random write IOPS in VM in RHHI 2.0
  • BZ - 1631329 - rpc marks brick disconnected from glusterd
  • BZ - 1631372 - glusterfsd keeping fd open in index xlator after stop the volume
  • BZ - 1631576 - CVE-2018-14654 glusterfs: "features/index" translator can create arbitrary, empty files
  • BZ - 1632557 - CVE-2018-14651 glusterfs: glusterfs server exploitable via symlinks to relative paths
  • BZ - 1632974 - CVE-2018-14652 glusterfs: Buffer overflow in "features/locks" translator allows for denial of service
  • BZ - 1633431 - CVE-2018-14653 glusterfs: Heap-based buffer overflow via "gf_getspec_req" RPC message
  • BZ - 1635926 - CVE-2018-14660 glusterfs: Repeat use of "GF_META_LOCK_KEY" xattr allows for memory exhaustion
  • BZ - 1635929 - CVE-2018-14659 glusterfs: Unlimited file creation via "GF_XATTR_IOSTATS_DUMP_KEY" xattr allows for denial of service
  • BZ - 1636880 - CVE-2018-14661 glusterfs: features/locks translator passes an user-controlled string to snprintf without a proper format string resulting in a denial of service
  • BZ - 1636902 - "gluster vol heal <vol name> info" is hung on Distributed-Replicated ( Arbiter )
  • BZ - 1640135 - Wrong version number in /etc/redhat-storage-release
  • BZ - 1641489 - [Brick-Mux] gluster vol stop fails with Error : Request timed out.
  • BZ - 1641586 - spec: wrong release number for RHGS 3.4.1 in /usr/share/glusterfs/release
  • BZ - 1643355 - [RHEL7] update with entitlement certificate for RHEL 7.6

CVEs

References